package chans

//func GetGoroute(keys ...string) *Goroute {
//	key := conv.GetDefaultString("default", keys...)
//	val := maps.Take("_goroute").Get(key)
//	if !val.IsNil() {
//		return val.Value.(*Goroute)
//	}
//	newGoroute := NewGoroute(20)
//	maps.Take("_goroute").Set(key, newGoroute)
//	return newGoroute
//}
//
//func NewGoroute(num int, cap ...uint) *Goroute {
//	e := NewEntity(num, cap...)
//	e.SetHandler(func(no, num int, data interface{}) {
//		data.(func())()
//	})
//	return &Goroute{e}
//}
//
//type Goroute struct {
//	*Entity
//}
//
//// Go 释放协程 这个方法有点局限性
//func (this *Goroute) Go(fn ...func()) error {
//	return this.Do(conv.Interfaces(fn)...)
//}
